#include <sys/types.h>
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>

void sumador (const char *pFileName, const char *pNumOP);

int main (int argc, char *argv[]) {
  sumador(argv[1], argv[2]);

  return 0;
}

void sumador (const char *pFileName, const char *pNumOP) {
  FILE *fp;
  int i, valor, operaciones;

  printf("%d incrementando...\n", getpid());
  operaciones = atoi(pNumOP);

  for (i = 0; i < operaciones; i++) {
    // Lectura.
    fp = fopen(pFileName, "rw");
    fscanf(fp, "%d", &valor);         
    fclose(fp);
    // Actualización.
    valor++;
    // Escritura.
    fp = fopen(pFileName, "w");
    fprintf(fp, "%d", valor);
    fclose(fp);
  }
}
